package com.example.shop.utils

import android.content.Context
import android.widget.ImageView
import com.bumptech.glide.Glide
import com.bumptech.glide.load.engine.DiskCacheStrategy
import com.bumptech.glide.load.resource.bitmap.CenterCrop
import com.bumptech.glide.load.resource.bitmap.CircleCrop
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import com.example.shop.R

class GlideUtils {
    companion object{
        //获取普通图片
        fun loadImage(context:Context,url:String,imageView:ImageView){
            Glide.with(context)
                .load(url)
                .placeholder(R.mipmap.ic_launcher)//占位符，当图片还没加载出来时，可以先用来显示
                .error(R.drawable.baseline_search_24)//图片加载失败的情况下显示这个图片
                .skipMemoryCache(false)//是否跳过缓存
                .diskCacheStrategy(DiskCacheStrategy.ALL)//设置缓存策略
                .centerCrop()//居中显示
                .into(imageView)
        }
        //获取圆形图片
        fun loadCircleImage(context:Context,url:String,imageView:ImageView){
            Glide.with(context)
                .load(url)
                .placeholder(R.mipmap.ic_launcher)//占位符，当图片还没加载出来时，可以先用来显示
                .error(R.drawable.baseline_search_24)//图片加载失败的情况下显示这个图片
                .skipMemoryCache(false)//是否跳过缓存
                .diskCacheStrategy(DiskCacheStrategy.ALL)//设置缓存策略
                //.circleCrop()//单纯的圆形
                .transform(CenterCrop(),CircleCrop())  //居中延伸的圆形
                .into(imageView)
        }
        //获取圆角图片
        fun loadCornersImage(context:Context,url:String,imageView:ImageView,raduis:Int){
            Glide.with(context)
                .load(url)
                .placeholder(R.mipmap.ic_launcher)//占位符，当图片还没加载出来时，可以先用来显示
                .error(R.drawable.baseline_search_24)//图片加载失败的情况下显示这个图片
                .skipMemoryCache(false)//是否跳过缓存
                .diskCacheStrategy(DiskCacheStrategy.ALL)//设置缓存策略
                .transform(CenterCrop(),RoundedCorners(raduis))//居中延伸的圆角图片
                .into(imageView)
        }
    }
}